#include "CharacterVocation.h"
#include "CharacterVocation_mercy.h"

Mercy::string Mercy::_mercyVocation = "Mercy";
Mercy::string Mercy::_mercyMajor[MAJOR_MAX_PER] = { "Support", "Scout" };
Mercy::WEAPON Mercy::_mercyWeapon[WEAPON_MAX_PER] = { Wand, Dagger};
Mercy::ARMOUR Mercy::_mercyArmour = Textile;

Mercy::Mercy() :Vocation()
{
	_oath = new string;
	*_oath = "";
}

Mercy::Mercy(const string & oath, const Vocation & voc) : Vocation(voc)
{
	_oath = new string;
	*_oath = oath;
}

void Mercy::DefVocation()
{
	Vocation::DefVocation(_mercyVocation);
}

void Mercy::DefMajor()
{
	Vocation::DefMajor(_mercyMajor);
}

void Mercy::DefWeapon()
{
	Vocation::DefWeapon(_mercyWeapon);
}

void Mercy::DefArmour()
{
	Vocation::DefArmour(_mercyArmour);
}


void Mercy::DefMercy()
{
	DefVocation();
	DefMajor();
	DefWeapon();
	DefArmour();
}

void Mercy::DefOath(const string & oath)
{
	_oath = new string;
	*_oath = oath;
}

void Mercy::ShowOath() const
{
	std::cout << "Oath : " << *_oath << std::endl;
}

Mercy::~Mercy()
{
	delete _oath;
}